Presentation of representation of device in virtual space based on live physical attribute(s)

ABSTRACT

In one aspect, an apparatus may include at least one processor and storage accessible to the at least one processor. The storage may include instructions executable by the at least one processor to identify a live physical attribute of a device, where the live physical attribute may be related to the device&#39;s orientation or another aspect of the device. The instructions may also be executable to visually present, in virtual space, a representation of the device. The representation may be presented according to the live physical attribute of the device.

FIELD

The disclosure below relates to technically inventive, non-routinesolutions that are necessarily rooted in computer technology and thatproduce concrete technical improvements. In particular, the disclosurebelow relates to presentation of a representation of a device in virtualspace based on one or more live physical attributes of the device.

BACKGROUND

As recognized herein, the ever-increasing prevalence of digitaltechnology in our daily lives has led to a revolution in the way peoplework and interact with each other. For instance, users often interactwith each other in virtual environments such as virtual reality (VR)worlds and the metaverse. However, the disclosure below recognizes thatwhile these virtual environments attempt to represent real-worldinteractions between people for the virtual environments to feel aslife-like as possible, much improvement is still needed.

SUMMARY

Accordingly, in one aspect an apparatus includes at least one processorand storage accessible to the at least one processor. The storageincludes instructions executable by the at least one processor toidentify a live physical attribute of a device, where the live physicalattribute is related to the device's orientation. The instructions arealso executable to visually present, in virtual space, a representationof the device (e.g., as a graphical object). The representation is thuspresented according to the live physical attribute of the device.

In certain example implementations, the representation may be generatedusing metadata related to the positioning of different parts of thedevice with respect to each other. The metadata may even include datarelated to movement of different parts of the device with respect toeach other. The metadata may be established at least in part by acomputer aided design (CAD) file, for example. Additionally, theinstructions may be executable to access the metadata at storage of aheadset used to present the representation, and/or access the metadataat cloud storage accessible to the apparatus. In some examples, theapparatus may even include the headset.

Additionally, in some example embodiments the instructions may beexecutable to use input from a camera to identify the live physicalattribute. The live physical attribute may be identified from a quickresponse (QR) code on the device as identified from the input, aninfrared (IR) light reflector on the device as identified from theinput, and/or an IR light strobe on the device as identified from theinput.

In certain examples, the apparatus may even include the device itselfand/or a server that generates the virtual space.

In another aspect, a method includes identifying a live physicalattribute of a device and visually presenting, in virtual space, arepresentation of the device. The representation is presented accordingto the live physical attribute of the device.

In various example implementations, the live physical attribute may beidentified based on Bluetooth communication with the device and/or Wi-Ficommunication with the device.

Also in various examples, the live physical attribute may be related toorientation of the device in real space. Additionally or alternatively,the live physical attribute may be related to a lighting condition ofone or more light emitting diodes (LEDs) on a keyboard of the device. Asanother example, the live physical attribute may be a real keypress of areal key on a real keyboard of the device, and the representation mayshow a virtual keypress of a corresponding virtual key on a virtualkeyboard of the representation of the device.

In still another aspect, at least one computer readable storage medium(CRSM) that is not a transitory signal includes instructions executableby at least one processor to visually present, in virtual space, arepresentation of a device. The representation is presented according toa live physical attribute of the device.

In certain examples, the instructions may be executable to identify thelive physical attribute of the device using input from a camera thatimages the device as located in the real world.

Also in certain examples, the instructions may be executable to identityinput selecting, in virtual space, the representation. Responsive to theinput, the instructions may then be executable to present, in virtualspace, technical specifications related to the device and/or data onwhere to buy a similar device.

The details of present principles, both as to their structure andoperation, can best be understood in reference to the accompanyingdrawings, in which like reference numerals refer to like parts, and inwhich:

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an example system consistent with presentprinciples;

FIG. 2 is a block diagram of an example network of devices consistentwith present principles;

FIG. 3 illustrates an example headset that may be used to present an AR,MR, or VR presentation consistent with present principles;

FIG. 4 shows example virtual space in which live physical attributes ofa real-world device are represented via a virtual representation of thedevice itself consistent with present principles;

FIG. 5 shows perspective views of various example physicalconfigurations of a laptop/convertible computer that may be representedin virtual space consistent with present principles;

FIG. 6 shows a perspective view of a keyboard with light-emitting diode(LED) backlighting of various colors that can be represented in virtualspace consistent with present principles;

FIGS. 7 and 8 show respective graphical user interfaces (GUIs) that maybe presented responsive to another person selecting a representation invirtual space of a real-world device consistent with present principles;

FIG. 9 illustrates example logic in example flow chart format that maybe executed by a device consistent with present principles; and

FIG. 10 shows an example settings GUI that may be presented on a displayto configure one or more settings of a device to operate consistent withpresent principles.

DETAILED DESCRIPTION

Among other things, the detailed description below discussesrepresenting in virtual space the physical attributes of devices beingused by a user, whether presented as part of a VR, AR, or MR experience.For example, a user might use a Lenovo Yoga laptop computer to share adesktop screen or word processing document with others in a virtualworkroom meeting. The Yoga laptop may be rendered in virtual space tocovey its mode (e.g., tent mode), orientation, and position relative toits user in real space. Thus, live physical attributes of the real-worlddevice may be conveyed in virtual space.

In various examples, device/object rendering metadata may be used thatincludes data of floating and moving parts of the relevant device aswell as the device part movement/motions themselves. For example, a CADdrawing may be used. This may be done to help the VR headset withaccurate device rendering in virtual space (e.g., a Yoga laptop withdifferent modes such as tent, tablet, and presentation mode may becaptured/encompassed by the object rendering metadata).

Additionally, device/object rendering metadata can be embedded in theassociated device itself, such as in its firmware/driver, which can betransmitted and stored in the separate VR device during a pairingprocess. Still further, device/object rendering metadata can be storedonline and then downloaded to the VR device by unique identifier (UID)such as QR code on the associated device itself.

Moreover, position markers such as IR reflectors, machine readablevisual identifiers like QR codes, and IR strobes can be embedded on thedevice itself to help the separate VR headset gauge the device'sorientation and relative position for representing live physicalattributes in virtual space.

Still further, device live physical attributes like parts movement(e.g., mode transition on Yoga laptop) may be transmitted to the VRheadset or other VR device via a side channel such as a Bluetoothchannel, Wi-Fi link, etc. Keypresses on a Bluetooth keyboard may also berepresented as live physical attributes, as may keyboard LED lightpatterns on Legion gaming laptops and other types of computers.

If desired, device interactions in virtual space from other users can bepredefined by the device or device owner so that, for example, touchingthe device can yield more detailed information about the device such astech specs or where to buy the device. The device owner/user might evenbe notified about these interactions and may in some specific exampleshave to allow interaction from the other user in virtual space beforethe other user is able to control certain aspect of the device (e.g.,taking a picture with the device's camera, changing the color pattern onthe device's keyboard, etc.) since the exposed control interface can bepredefined by the user.

Prior to delving further into the details of the instant techniques,note with respect to any computer systems discussed herein that a systemmay include server and client components, connected over a network suchthat data may be exchanged between the client and server components. Theclient components may include one or more computing devices includingtelevisions (e.g., smart TVs, Internet-enabled TVs), computers such asdesktops, laptops and tablet computers, so-called convertible devices(e.g., having a tablet configuration and laptop configuration), andother mobile devices including smart phones. These client devices mayemploy, as non-limiting examples, operating systems from Apple Inc. ofCupertino CA, Google Inc. of Mountain View, CA, or Microsoft Corp. ofRedmond, WA. A Unix® or similar such as Linux® operating system may beused. These operating systems can execute one or more browsers such as abrowser made by Microsoft or Google or Mozilla or another browserprogram that can access web pages and applications hosted by Internetservers over a network such as the Internet, a local intranet, or avirtual private network.

As used herein, instructions refer to computer-implemented steps forprocessing information in the system. Instructions can be implemented insoftware, firmware or hardware, or combinations thereof and include anytype of programmed step undertaken by components of the system; hence,illustrative components, blocks, modules, circuits, and steps aresometimes set forth in terms of their functionality.

A processor may be any single- or multi-chip processor that can executelogic by means of various lines such as address lines, data lines, andcontrol lines and registers and shift registers. Moreover, any logicalblocks, modules, and circuits described herein can be implemented orperformed with a system processor, a digital signal processor (DSP), afield programmable gate array (FPGA) or other programmable logic devicesuch as an application specific integrated circuit (ASIC), discrete gateor transistor logic, discrete hardware components, or any combinationthereof designed to perform the functions described herein. A processorcan also be implemented by a controller or state machine or acombination of computing devices. Thus, the methods herein may beimplemented as software instructions executed by a processor, suitablyconfigured application specific integrated circuits (ASIC) or fieldprogrammable gate array (FPGA) modules, or any other convenient manneras would be appreciated by those skilled in those art. Where employed,the software instructions may also be embodied in a non-transitorydevice that is being vended and/or provided that is not a transitory,propagating signal and/or a signal per se (such as a hard disk drive,solid state drive, CD ROM or Flash drive). The software codeinstructions may also be downloaded over the Internet. Accordingly, itis to be understood that although a software application for undertakingpresent principles may be vended with a device such as the system 100described below, such an application may also be downloaded from aserver to a device over a network such as the Internet.

Software modules and/or applications described by way of flow chartsand/or user interfaces herein can include various sub-routines,procedures, etc. Without limiting the disclosure, logic stated to beexecuted by a particular module can be redistributed to other softwaremodules and/or combined together in a single module and/or madeavailable in a shareable library. Also, the user interfaces(UI)/graphical UIs described herein may be consolidated and/or expanded,and UI elements may be mixed and matched between UIs.

Logic when implemented in software, can be written in an appropriatelanguage such as but not limited to hypertext markup language (HTML)-5,Java®/JavaScript, C# or C++, and can be stored on or transmitted from acomputer-readable storage medium such as a random access memory (RAM),read-only memory (ROM), electrically erasable programmable read-onlymemory (EEPROM), a hard disk drive or solid state drive, compact diskread-only memory (CD-ROM) or other optical disk storage such as digitalversatile disc (DVD), magnetic disk storage or other magnetic storagedevices including removable thumb drives, etc.

In an example, a processor can access information over its input linesfrom data storage, such as the computer readable storage medium, and/orthe processor can access information wirelessly from an Internet serverby activating a wireless transceiver to send and receive data. Datatypically is converted from analog signals to digital by circuitrybetween the antenna and the registers of the processor when beingreceived and from digital to analog when being transmitted. Theprocessor then processes the data through its shift registers to outputcalculated data on output lines, for presentation of the calculated dataon the device.

Components included in one embodiment can be used in other embodimentsin any appropriate combination. For example, any of the variouscomponents described herein and/or depicted in the Figures may becombined, interchanged or excluded from other embodiments.

“A system having at least one of A, B, and C” (likewise “a system havingat least one of A, B, or C” and “a system having at least one of A, B,C”) includes systems that have A alone, B alone, C alone, A and Btogether, A and C together, B and C together, and/or A, B, and Ctogether, etc.

The term “circuit” or “circuitry” may be used in the summary,description, and/or claims. As is well known in the art, the term“circuitry” includes all levels of available integration, e.g., fromdiscrete logic circuits to the highest level of circuit integration suchas VLSI, and includes programmable logic components programmed toperform the functions of an embodiment as well as general-purpose orspecial-purpose processors programmed with instructions to perform thosefunctions.

Now specifically in reference to FIG. 1 , an example block diagram of aninformation handling system and/or computer system 100 is shown that isunderstood to have a housing for the components described below. Notethat in some embodiments the system 100 may be a desktop computersystem, such as one of the ThinkCentre® or ThinkPad® series of personalcomputers sold by Lenovo (US) Inc. of Morrisville, NC, or a workstationcomputer, such as the ThinkStation®, which are sold by Lenovo (US) Inc.of Morrisville, NC; however, as apparent from the description herein, aclient device, a server or other machine in accordance with presentprinciples may include other features or only some of the features ofthe system 100. Also, the system 100 may be, e.g., a game console suchas XBOX®, and/or the system 100 may include a mobile communicationdevice such as a mobile telephone, notebook computer, and/or otherportable computerized device.

As shown in FIG. 1 , the system 100 may include a so-called chipset 110.A chipset refers to a group of integrated circuits, or chips, that aredesigned to work together. Chipsets are usually marketed as a singleproduct (e.g., consider chipsets marketed under the brands INTEL®, AMD®,etc.).

In the example of FIG. 1 , the chipset 110 has a particulararchitecture, which may vary to some extent depending on brand ormanufacturer. The architecture of the chipset 110 includes a core andmemory control group 120 and an I/O controller hub 150 that exchangeinformation (e.g., data, signals, commands, etc.) via, for example, adirect management interface or direct media interface (DMI) 142 or alink controller 144. In the example of FIG. 1 , the DMI 142 is achip-to-chip interface (sometimes referred to as being a link between a“northbridge” and a “southbridge”).

The core and memory control group 120 include one or more processors 122(e.g., single core or multi-core, etc.) and a memory controller hub 126that exchange information via a front side bus (FSB) 124. As describedherein, various components of the core and memory control group 120 maybe integrated onto a single processor die, for example, to make a chipthat supplants the “northbridge” style architecture.

The memory controller hub 126 interfaces with memory 140. For example,the memory controller hub 126 may provide support for DDR SDRAM memory(e.g., DDR, DDR2, DDR3, etc.). In general, the memory 140 is a type ofrandom-access memory (RAM). It is often referred to as “system memory.”

The memory controller hub 126 can further include a low-voltagedifferential signaling interface (LVDS) 132. The LVDS 132 may be aso-called LVDS Display Interface (LDI) for support of a display device192 (e.g., a CRT, a flat panel, a projector, a touch-enabled lightemitting diode (LED) display or other video display, etc.). A block 138includes some examples of technologies that may be supported via theLVDS interface 132 (e.g., serial digital video, HDMI/DVI, display port).The memory controller hub 126 also includes one or more PCI-expressinterfaces (PCI-E) 134, for example, for support of discrete graphics136. Discrete graphics using a PCI-E interface has become an alternativeapproach to an accelerated graphics port (AGP). For example, the memorycontroller hub 126 may include a 16-lane (x16) PCI-E port for anexternal PCI-E-based graphics card (including, e.g., one of more GPUs).An example system may include AGP or PCI-E for support of graphics.

In examples in which it is used, the I/O hub controller 150 can includea variety of interfaces. The example of FIG. 1 includes a SATA interface151, one or more PCI-E interfaces 152 (optionally one or more legacy PCIinterfaces), one or more universal serial bus (USB) interfaces 153, alocal area network (LAN) interface 154 (more generally a networkinterface for communication over at least one network such as theInternet, a WAN, a LAN, a Bluetooth network using Bluetooth 5.0communication, etc. under direction of the processor(s) 122), a generalpurpose I/O interface (GPIO) 155, a low-pin count (LPC) interface 170, apower management interface 161, a clock generator interface 162, anaudio interface 163 (e.g., for speakers 194 to output audio), a totalcost of operation (TCO) interface 164, a system management bus interface(e.g., a multi-master serial computer bus interface) 165, and a serialperipheral flash memory/controller interface (SPI Flash) 166, which, inthe example of FIG. 1 , includes basic input/output system (BIOS) 168and boot code 190. With respect to network connections, the I/O hubcontroller 150 may include integrated gigabit Ethernet controller linesmultiplexed with a PCI-E interface port. Other network features mayoperate independent of a PCI-E interface. Example network connectionsinclude Wi-Fi as well as wide-area networks (WANs) such as 4G and 5Gcellular networks.

The interfaces of the I/O hub controller 150 may provide forcommunication with various devices, networks, etc. For example, whereused, the SATA interface 151 provides for reading, writing or readingand writing information on one or more drives 180 such as HDDs, SDDs ora combination thereof, but in any case the drives 180 are understood tobe, e.g., tangible computer readable storage mediums that are nottransitory, propagating signals. The I/O hub controller 150 may alsoinclude an advanced host controller interface (AHCI) to support one ormore drives 180. The PCI-E interface 152 allows for wireless connections182 to devices, networks, etc. The USB interface 153 provides for inputdevices 184 such as keyboards (KB), mice and various other devices(e.g., cameras, phones, storage, media players, etc.).

In the example of FIG. 1 , the LPC interface 170 provides for use of oneor more ASICs 171, a trusted platform module (TPM) 172, a super I/O 173,a firmware hub 174, BIOS support 175 as well as various types of memory176 such as ROM 177, Flash 178, and non-volatile RAM (NVRAM) 179. Withrespect to the TPM 172, this module may be in the form of a chip thatcan be used to authenticate software and hardware devices. For example,a TPM may be capable of performing platform authentication and may beused to verify that a system seeking access is the expected system.

The system 100, upon power on, may be configured to execute boot code190 for the BIOS 168, as stored within the SPI Flash 166, and thereafterprocesses data under the control of one or more operating systems andapplication software (e.g., stored in system memory 140). An operatingsystem may be stored in any of a variety of locations and accessed, forexample, according to instructions of the BIOS 168.

As also shown in FIG. 1 , the system 100 may include one or more sensors191. The sensors 191 may include, for example, one or more cameras thatgather images and provide the images and related input to the processor122. The camera(s) may be webcams and/or digital cameras, but may alsobe thermal imaging cameras, infrared (IR) cameras, three-dimensional(3D) cameras, and/or cameras otherwise integrated into the system 100and controllable by the processor 122 to gather still images and/orvideo. Thus, for example, a camera might be on a headset being worn by auser so that the system 100 may execute computer vision and/orsimultaneous localization and mapping (SLAM) using images from thecamera consistent with present principles (e.g., for location tracking).

In addition to or in lieu of the foregoing, the sensors 191 may includeone or more inertial measurement sensors that might be included in aninertial measurement unit (IMU) for location tracking (e.g., deadreckoning) and other purposes discussed below. For example, the system100 may be embodied in a headset and the inertial measurement sensorsmay be located on the headset. Example inertial measurement sensorsinclude magnetometers that sense and/or measure directional movement ofthe system 100 and provide related input to the processor 122,gyroscopes that sense and/or measure the orientation of the system 100and provide related input to the processor 122, and accelerometers thatsense acceleration and/or movement of the system 100 and provide relatedinput to the processor 122.

Additionally, though not shown for simplicity, in some embodiments thesystem 100 may include an audio receiver/microphone that provides inputfrom the microphone to the processor 122 based on audio that isdetected, such as via a user providing audible input to the microphoneas a voice command. The system 100 may also include a global positioningsystem (GPS) transceiver that is configured to communicate with at leastone satellite to receive/identify geographic position information andprovide the geographic position information to the processor 122.However, it is to be understood that another suitable position receiverother than a GPS receiver may be used in accordance with presentprinciples to determine the location of the system 100.

It is to be understood that an example client device or othermachine/computer may include fewer or more features than shown on thesystem 100 of FIG. 1 . In any case, it is to be understood at leastbased on the foregoing that the system 100 is configured to undertakepresent principles.

Turning now to FIG. 2 , example devices are shown communicating over anetwork 200 such as the Internet in accordance with present principles(e.g., for participating in a shared virtual environment). It is to beunderstood that each of the devices described in reference to FIG. 2 mayinclude at least some of the features, components, and/or elements ofthe system 100 described above. Indeed, any of the devices disclosedherein may include at least some of the features, components, and/orelements of the system 100 described above.

FIG. 2 shows a notebook computer and/or convertible computer 202, adesktop computer 204, a wearable device 206 such as a smart watch, asmart television (TV) 208, a smart phone 210, a tablet computer 212, aheadset 216, and a server 214 such as an Internet server that mayprovide cloud storage accessible to the devices 202-212, 216 as well ashost/generate AR, VR, and MR simulations consistent with presentprinciples. It is to be understood that the devices 202-216 may beconfigured to communicate with each other over the network 200 toundertake present principles.

Now describing FIG. 3 , it shows a top plan view of an example headsetconsistent with present principles, such as the headset 216 referencedabove. The headset 216 may include a housing 300, at least one processor302 in the housing 300, and a non-transparent or transparent “heads up”display 304 accessible to the at least one processor 302 and coupled tothe housing 300. The display 304 may for example have discrete left andright eye pieces as shown for presentation of stereoscopic images and/or3D virtual images/objects using augmented reality (AR) software, virtualreality (VR) software, and/or mixed reality (MR) software.

The headset 216 may also include one or more forward-facing cameras 306.As shown, the camera 306 may be mounted on a bridge portion of thedisplay 304 above where the user's nose would be so that it may have anoutward-facing field of view similar to that of the user himself orherself while wearing the headset 216. The camera 306 may be used forSLAM, computer vision, image registration, spatial mapping, etc. totrack movements of the wearer/headset 216 within real-world space andmap the movements to virtual space. The camera 306 may also be used toidentify the orientation of another device and other live physicalattributes as described herein (e.g., using computer vision, objectrecognition, and other image processing techniques). Also note that thecamera(s) 306 may be located at other headset locations as well.

Additionally, in some examples inward-facing cameras 310 may also bemounted within the headset 216 and oriented to image the user's eyes foreye tracking while the user wears the headset 216.

Still further, the headset 316 may include storage 308 accessible to theprocessor 302 and coupled to the housing 300, a microphone 312 fordetecting audio of the user speaking voice commands, and still othercomponents not shown for simplicity such as a network interface forcommunicating over a network such as the Internet and a battery forpowering components of the headset 216 such as the camera(s) 306.Additionally, note that while the headset 216 is illustrated as ahead-circumscribing VR headset, it may also be established bycomputerized smart glasses or another type of headset including othertypes of AR and MR headsets. For example, the headset may be establishedby an AR headset that may have a transparent display that is able topresent 3D virtual objects/content. The headset's display may thereforebe transparent for AR and MR applications, or may be non-transparent forVR applications or AR/MR applications where a camera feed of the user'sforward-facing field of view (FOV) of his/her real-world surroundings ispresented on the non-transparent display along with virtual objects.

Also note here that while FIG. 3 shows a headset, handsets such assmartphones and tablet computers may also be used for AR, MR, and VRapplications as discussed herein to present virtual objects andenvironments on the handset's display. Further note that laptops andother types of computing devices may also be used.

Now in reference to FIG. 4 , suppose an end-user 402 is wearing aheadset like the headset 216 to engage in a computer-generated VRexperience/presentation 400 in the metaverse. The user 402 might bedoing so to virtually interact with another person 410 in virtual spaceas established by the VR presentation 400. A representation 404 of theother person 410 is therefore shown in virtual space, with the user 402and person 410 possibly being remotely-located from each other by milesor more in real space. But owing to the virtual presentation 400, theyare both placed into the same virtual space together, which in this caseis a virtual conference room as shown. Also note that according to FIG.4 , the current field of view (FOV) shown of the presentation 400 isfrom the virtual perspective of the user 402 while in virtual space, andas such the perspective of the presentation 400 may change as the user402 moves around the virtual space itself (e.g., possibly as mapped toreal-world movements of the user as identified using input from a camerain the user's real world environment and execution of computer vision).

As also shown in FIG. 4 , the virtual conference room may include acomputer-generated virtual conference table 406. Virtually presented onthe table 406 may be a representation 408 of a convertible laptopcomputer, with the representation 408 being a graphical object presentedaccording to one or more real-world live physical attributes of thatdevice. In various examples, the live physical attributes can relate toreal-world position and orientation of the laptop computer relative toits real-world person 410, and its real-world position and orientationrelative to a real-world surface on which it has been placed. The livephysical attributes may also relate to positioning and/or movement ofdifferent parts of the laptop with respect to each other.

For example, as reflected in the virtual representation 408, the laptophas been placed in a tent mode where, when placed on an actualreal-world surface, the laptop's two panels form an upside down “V”. Assuch, the laptop's real-world display on one of the panels faces outwardand toward the user 410 according to its current real world orientationso the user 410 can view content presented on the real-world displaywhile the laptop is in the tent mode configuration.

Accordingly, this live/current configuration (and the live physicalattributes of real-world position/direction/distance from the user) maybe represented in the corresponding virtual representation 408 invirtual space and as seen by the user 402 and person 410 from their ownrespective virtual FOVs while both of the people 402, 410 are immersedwithin virtual space. Thus, the virtual representation 408 of the laptopin virtual space is presented in tent mode with its virtual displayfacing toward the representation 408 of the person 410 (and at a virtualdistance and virtual direction in virtual space that is the same as orsimilar to the real-world distance and direction to the person 510 inreal space) to mimic real-world positioning and orientation of thereal-world laptop with respect to the real-world user 410 in real space.And owing to the virtual FOV of the user 402 facing the representation404 of the user 410 as shown, the user 402 sees a side view of therepresentation 408.

Further note that if the user 410 where to move the real-world laptoppanels with respect to each other in the real world, such as to changefrom tent mode to another mode like stand mode or tablet mode, thecorresponding virtual panels of the representation 408 may move in realtime in virtual space as the real panels move in real space. The virtualpanels may also be oriented toward the user representation 404 invirtual space just as the corresponding real panels are oriented towardthe user 410 in real space as they move.

As also shown in FIG. 4 , also virtually presented in virtual space, onthe table 406 specifically, may be a representation 412 of a real-worldwireless Bluetooth keyboard being used by the user 410. Thus, here toothe representation 412 may be presented in virtual space according toone or more real-world live physical attributes of the correspondingreal world keyboard represented by the representation 412. For example,light emitting diode (LED) backlighting under keys of the real-worldkeyboard may be one or more real-world colors according to userpreference, and so the virtual backlighting of respective virtual keysof the virtual keyboard 412 may be presented in the same/similar colors.As another example, should the user 410 press a certain real key of thereal keyboard, the same key on the virtual keyboard 412 may move downand up in real time in virtual space as the corresponding real key movesdown and up in real space.

Continuing the detailed description in reference to FIG. 5 , it showsvarious example configurations 502, 504, 508, and 510 of a convertiblelaptop computer 500, with the configurations 502-510 establishing livephysical attributes in various examples. According to configuration 502,the computer 500 has been placed into a laptop mode where the bottompanel with keyboard is placed face up on a surface such as a desk andthe plane of the upper panel with display is oriented obliquely and/orperpendicularly with respect to the plane of the lower panel.

According to configuration 504, the computer 500 has been placed intablet mode where the panels have been rotated about the hinge of thecomputer 500 so that the upper and lower panels are back-to-back withthe display and keyboard facing outward away from each other in oppositedirections.

Then according to configuration 508, the computer 500 has been placed instand or presentation mode where the upper and lower panels have beenrotated about the hinge so that the lower panel rests on a surface withthe keyboard side face down and so that the upper panel with display isoriented obliquely and/or perpendicularly with respect to the plane ofthe lower panel so that the display still faces outward for contentviewing. Then for the configuration 506, the same general, relativepositioning of the upper and lower panels with respect to each other maybe maintained but the orientation of the computer 500 may be rotated sothat the outer longitudinal edges of the upper and lower panels rest ona surface to establish a tent mode or upside down “V” similar to asdescribed above in reference to FIG. 4 . Thus, while in the tent modethe keyboard and display both face outward away from the computer 500 atoblique angles with respect to the surface.

Further describing the computer 500, as shown according to configuration504, one or more portions of the computer 500 (such as the display sideof the upper panel as shown) may include one or more infrared (IR) lightreflectors 512 for an IR transceiver and/or IR camera to identify theconfiguration and/or orientation of the device based on the knownlocations of the IR light reflectors 512. Thus, the configuration and/ororientation may be identified via the reflectors 512 using computervision using a camera located elsewhere within the environment.

Additionally or alternatively, as shown for configuration 502, thecomputer 500 may include one or more IR light emitters/strobes 510positioned at various known locations on the computer 500 so computervision may similarly be executed to identify theconfiguration/orientation of the computer 500 based on the positioningof the strobes 510.

As but one more example, as shown according to configuration 508, one ormore quick response (QR) codes 514 may be placed on stickers located atknown locations about the housing of the computer 500, and/or may evenbe graphically presented at a designated location on the display of thecomputer 500, for the other device having the camera located elsewherein the environment to identify the configuration/orientation of thecomputer 500 based on the view/location of the QR code 514. Furthermore,in some examples the QR code may even point to a website or otherelectronic storage where a computer aided design (CAD) file or other 3Drendering data for the computer 500 itself may be accessed (based on theother device scanning the QR code using its camera to identify thewebsite URL or other storage location address). Thus, the live physicalattributes of device orientation/mode configuration may be determinedbased on the locations and orientations of the components 510, 512,and/or 514.

Now in reference to FIG. 6 , an example perspective view of a real-worldkeyboard 600 is shown. Though not clear from FIG. 6 owing to the blackand white drawings, it is to be understood that at least the first andsecond columns of keys of the keyboard 600 (including control key 602)are backlit in a purple color via LEDs under the respective keys.Remaining keys (including space bar key 604) are understood to bebacklit in a green color via LEDs under those respective keys. Thus, thelive physical attributes of the backlighting of each key may besimilarly represented on a virtual keyboard in virtual space thatrepresents the keyboard 600. For example, the same respective keys ofthe virtual keyboard 412 may be backlit in the same colors according tothe respective lighting conditions of the respective real-world keys ofthe keyboard 600 itself.

Now in reference to FIG. 7 , suppose according to the example of FIG. 4that while within the virtual conference room with each other, the user402 controls his virtual representation to reach out and virtually touchthe representation/virtual device 408 of the user 410 with a virtualhand. This may be identified by the device facilitating the virtualpresentation as input selecting the representation 408 in virtual space.Thus, responsive to the input, the headset display of the user 402 maypresent, in virtual space, data related to the real-world devicerepresented by the representation 408. For example, the data may includetechnical specifications related to the device and information on whereto buy a similar device (e.g., same make and model).

FIG. 7 illustrates the presentation of this data. As shown, awindow/graphical user interface (GUI) 702 may be overlaid at the headsetdisplay on top of the user's view of the virtual environment. Data 702indicates the name of the user 410 and indicates metadata such as themake, series, and model of computer represented by the representation408. The data 702 may also indicate real-world technical specs for thereal-world computer, including that the computer includes a 2.4 GHzprocessor, 16 gigabytes of memory/RAM, and 2 terabytes of internalpersistent storage such as solid state drive storage or hard disc drivestorage.

As also shown in FIG. 7 , in some examples the GUI 700 may indicatewhere to buy a similar device. For example, the GUI 700 may include aselector 704 with text indicating that a similar device can be bought orviewed in the electronic store of the device manufacturer. The selector704 may even be selectable via touch input, voice input, eye input, etc.to command the user's device to then navigate to a linked websiteuniform resource locator (URL) for a web page displaying the samecomputer make/series/model for sale so that the user 702 may buy asimilar computer direct from the manufacturer.

Also note that responsive to the user 402 virtually selecting therepresentation 408 to present the GUI 700 on his/her headset display, anelectronic notification may be sent to the other headset of the otherperson 410 for presentation on its own display as a GUI 800 as shown inFIG. 8 . The GUI 800 may therefore include an indication 802 to the user410 that the user 402 wanted information on the computer represented byrepresentation 408 and that the system/VR simulator provided theinformation.

Additionally, further note that in some circumstances, the user 402 maynot only reach out with a virtual hand (e.g., that tracks real handmotion) to virtually touch the representation 408 in virtual space inorder to be presented with the GUI 700, but may also be afforded theability to virtually interact with the representation 408 itself toaffect real-world action at the corresponding real-world computer itselfthat is represented by the representation 408 in virtual space. Thus,the GUI 800 may also include a prompt 804 prompting the person 410whether the person 410 would like to allow the user 402 to virtuallyinteract with the computer represented by the representation 408 inorder to control the corresponding computer itself in the real world.For example, as shown the prompt 804 may indicate that selection of the“yes” selector 806 may permit the user 402 to change the real-worldbacklighting colors of the real-world keyboard of the correspondingcomputer and to take/generate a real-world photograph using thecomputer's real-world camera according to the current real-world fieldof view of the real-world camera. However, if the user 410 does not wishto provide such control to the user 402, the user 410 may instead selectthe “no” selector 808 to decline to give such permissions to the user402.

Referring now to FIG. 9 , it shows example overall logic consistent withpresent principles that may be executed by a device such as the system100, an end-user device such as a smartphone or AR/VR headset, and/or aremotely-located coordinating server in any appropriate combination. Forexample, the logic of FIG. 9 may be executed jointly or by one of asmartphone and server that are communicating to present a metaverseexperience to or otherwise generate a virtual space for the users 402,410 so that those people can virtually interact with each other in thesame virtual space. Also note that while the logic of FIG. 9 is shown inflow chart format, other suitable logic may also be used.

Beginning at block 900, the device may generate and present a virtualenvironment, such as the virtual conference room described above inreference to FIG. 4 . The logic may then proceed to block 902. At block902 the device may access metadata related to the positioning and/ormovement of different parts of a computer with respect to each other,where the computer may be a real-world computer used by one of thereal-world participants and that is also virtually represented in thevirtual environment itself. The metadata may be accessed from anysuitable predetermined storage location, such as local storage of theAR/VR headset paired with the computer itself (and that is being used bythe corresponding user to view the virtual presentation). Additionallyor alternatively, the metadata may be accessed from local storage on thesubject computer itself or even from cloud/server storage for theassociated user/computer. The metadata itself may take various forms,such as a 3D model of the device itself including but not limited to acomputer aided design (CAD) file specifically.

From block 902 the logic may then proceed to block 904. At block 904 thedevice may identify one or more live physical attributes of thecomputer, such as which mode and orientation the computer has beenplaced in according to the description of FIG. 5 above. Other livephysical attributes of the real-world computer may also be identified,such as LED backlighting color for the computer's keyboard as well asactual user keypresses of keys on the keyboard as they occur in realtime (and, in some examples, the LED backlighting color change as mightoccur responsive to the keypress itself).

The live physical attributes may be identified any number of ways,including some already set forth above. For example, a real-world cameraon the headset that is paired with the computer or a real-world camerathat is located elsewhere within the real world may be used to identifythe attributes. E.g., device mode/orientation may be identified from thepositioning of different parts of a convertible computer with respect toeach other as determined using computer vision, and/or identified fromthe predetermined positions and orientations of the IR light strobe 510,IR light reflectors 512, and/or QR code 514 on the computer as alsodetermined using computer vision.

The real-world camera may also be used to identify other live physicalattributes as well, such as a real keypress of a real key on a realkeyboard of the computer as identified using computer vision, objectrecognition to identify the key, and/or action recognition to identifythe keypress gesture. This may be used to ultimately show, as part ofthe virtual representation of the same computer in virtual space, avirtual keypress of a corresponding virtual key on a virtual keyboard ofthe computer within virtual space.

Additionally or alternatively, the live physical attributes of deviceorientation, mode, and movement may be identified based on input frominertial sensors in the computer itself, such as a gyroscope andaccelerometer. E.g., input from inertial measurement sensors in eachmovable part of the convertible computer may be used (e.g., a gyroscopeand accelerometer in each panel of the convertible computer). Theinertial sensor inputs may then be transmitted to the device(s)executing the logic of FIG. 9 via Bluetooth communication with thecomputer, Wi-Fi communication with the computer, wireless 5G cellularcommunication with the computer, etc. for processing to determine mode,movement, and orientation.

From block 904 the logic may proceed to block 906. At block 906 thedevice may visually present, in virtual space, a representation of thecomputer as described herein so that the representation is presentedaccording to the identified live physical attribute(s) of the computer.Thus, to reiterate, the representation may be visually presented torepresent the computer's current real-world orientation in real space,to represent a real-world keypress in real space, and/or to representreal-world LED backlighting for the real-world keyboard of the computer.

Still further, if desired in some examples the logic may move to block908 where the device may also present the visual content of thereal-world computer's display on the virtual display of therepresentation of the computer within virtual space so that the samereal time content is reflected on both the real-world display in realspace and the virtual display in virtual space. Also note that by usingstereoscopic images generated using AR or VR software, the visualcontent may be virtually presented on the virtual display in 3Daccording to the computer's current virtual orientation and virtualposition with respect to the viewing user (e.g., to thus match thecurrent real-world orientation of the computer and potentiallyreal-world position with respect to the viewing user). Thus, the virtualspatial relationship to the viewing user within virtual space may matchthe real-world spatial relationship to the viewing user within realspace if the two are located in the same real world space (e.g.,represent in virtual space the same distance/direction between the twoin the real world). Thus, the virtual display of the virtualrepresentation of the computer may act as a screen share where thecontent presented on the real-world computer is shown to others withinvirtual space via the virtual display of the virtual representation ofthe same computer. This content may include app windows, a desktopscreen, etc. as currently presented on the real-world display.

From block 908 the logic may then proceed to block 910. At block 910 thedevice may identify input selecting, in virtual space, therepresentation of the computer. The input may be input from anotherperson interacting within the virtual space to view device metadata andother information such as technical specs and where to purchase asimilar device as described above. Thereafter, the logic may proceed toblock 912 where the device may present the metadata/information invirtual space to the respective person that provided the inputidentified at block 910.

Now in reference to FIG. 10 , an example GUI 1000 consistent withpresent principles is shown that may be presented on the display of acomputer/client device to configure/enable one or more settings relatedto AR/VR/MR presentations as described herein. The settings GUI 1000 maybe reached by navigating a settings menu of the device or a dedicatedapp menu for a given VR/AR/MR simulator, for example. Also note that inthe example shown, each option discussed below may be selected bydirecting touch or cursor or other input to the respective check boxadjacent to the respective option.

As shown in FIG. 10 , the GUI 1000 may include an option 1002 that maybe selectable a single time to set or configure the device/system toundertake present principles to identify live physical attributes ofdevices and then visually present representations of the devices invirtual space according to the live physical attributes. For example,selection of the option 1002 may configure the device to execute thelogic of FIG. 9 as well as to execute the other actions described abovein reference to FIGS. 5-8 in multiple future virtual environmentpresentation instances over time. Additionally, note per FIG. 10 thatdevices for which live physical attributes may be identified andrepresented in virtual space include not just laptop computers but othertypes of computers and input devices as well, such as smartphones,wearable devices, kids' electronic devices, other AR/VR headsets, mice,keyboards, speakers, Internet of things (IoT) devices, etc. E.g., themovement of a real-world scroll wheel of a mouse may be represented invirtual space using a virtual representation of the mouse and scrollwheel so that the virtual scroll wheel mimics the actual speed anddirection of the corresponding real-world scroll wheel.

As also shown in FIG. 10 , the GUI 1000 may include an option 1004 tospecifically set the device to enable the computer for which livephysical attributes will be represented to be controllable by otherswithin virtual space besides the owner/user themselves. For example, perthe description above another person may be permitted to control thereal-world camera of the associated computer or the backlighting colorfor the real-world keyboard of the associated computer.

In some examples, the GUI 1000 may also include a setting 1006 at whichan end-user may choose one or more options 1008-1012 for different typesof information to present in virtual space to another person when thatother person interacts with the virtual representation of the associatedcomputer as described herein. Thus, option 1008 may be selected to setor enable the device/system to present metadata, option 1010 may beselected to set or enable the device/system to present technicalspecifications, and options 1012 may be selected to present informationon where to buy a similar computer.

As also shown in FIG. 10 , in some examples the GUI 1000 may include aselector 1014. The selector 1014 may be selectable to initiate adownload from an Internet-based server or other device of a CAD file orother 3D model related to the computer that is to be represented invirtual space so that the CAD file may be used to represent orientation,movement, etc. of the computer in virtual space as described above. Ifdesired, the GUI 1000 may even include a selector 1016 that may beselectable to initiate a pairing process where a headset that will beused to present the virtual environment may be paired with thedownloading device for the downloading device to wirelessly control theheadset to provide the downloaded CAD file for local storage at theheadset.

It may now be appreciated that present principles provide for animproved computer-based user interface that increases the functionalityand ease of use of the devices disclosed herein. The disclosed conceptsare rooted in computer technology for computers to carry out theirfunctions.

It is to be understood that whilst present principals have beendescribed with reference to some example embodiments, these are notintended to be limiting, and that various alternative arrangements maybe used to implement the subject matter claimed herein. Componentsincluded in one embodiment can be used in other embodiments in anyappropriate combination. For example, any of the various componentsdescribed herein and/or depicted in the Figures may be combined,interchanged or excluded from other embodiments.

What is claimed is:
 1. An apparatus, comprising: at least one processor;and storage accessible to the at least one processor and comprisinginstructions executable by the at least one processor to: identify alive physical attribute of a device, the live physical attribute relatedto the device's orientation; and visually present, in virtual space, arepresentation of the device, the representation presented according tothe live physical attribute of the device.
 2. The apparatus of claim 1,wherein the representation is generated using metadata related to thepositioning of different parts of the device with respect to each other.3. The apparatus of claim 2, wherein the metadata comprises data relatedto movement of different parts of the device with respect to each other.4. The apparatus of claim 3, wherein the metadata is established atleast in part by a computer aided design (CAD) file.
 5. The apparatus ofclaim 2, wherein the instructions are executable to: access the metadataat storage of a headset, the headset used to present the representation.6. The apparatus of claim 5, comprising the headset.
 7. The apparatus ofclaim 2, wherein the instructions are executable to: access the metadataat cloud storage accessible to the apparatus.
 8. The apparatus of claim2, wherein the instructions are executable to: use input from a camerato identify the live physical attribute.
 9. The apparatus of claim 8,wherein the live physical attribute is identified from a quick response(QR) code on the device as identified from the input.
 10. The apparatusof claim 8, wherein the live physical attribute is identified from oneor more of: an infrared (IR) light reflector on the device as identifiedfrom the input, an IR light strobe on the device as identified from theinput.
 11. The apparatus of claim 1, comprising the device.
 12. Theapparatus of claim 1, comprising a server that generates the virtualspace.
 13. A method, comprising: identifying a live physical attributeof a device; and visually presenting, in virtual space, a representationof the device, the representation presented according to the livephysical attribute of the device.
 14. The method of claim 13, whereinthe live physical attribute is identified based on one or more of:Bluetooth communication with the device, Wi-Fi communication with thedevice.
 15. The method of claim 13, wherein the live physical attributeis related to orientation of the device in real space.
 16. The method ofclaim 13, wherein the live physical attribute is related to a lightingcondition of one or more light emitting diodes (LEDs) on a keyboard ofthe device.
 17. The method of claim 13, wherein the live physicalattribute is a real keypress of a real key on a real keyboard of thedevice, the representation showing a virtual keypress of a correspondingvirtual key on a virtual keyboard of the representation of the device.18. At least one computer readable storage medium (CRSM) that is not atransitory signal, the at least one computer readable storage mediumcomprising instructions executable by at least one processor to:visually present, in virtual space, a representation of a device, therepresentation presented according to a live physical attribute of thedevice.
 19. The CRSM of claim 18, wherein the instructions areexecutable to: identify the live physical attribute of the device usinginput from a camera that images the device as located in the real world.20. The CRSM of claim 18, wherein the instructions are executable to:identity input selecting, in virtual space, the representation; andresponsive to the input, present, in virtual space, one or more of:technical specifications related to the device, data on where to buy asimilar device.